package com.neu.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.neu.base.PageBean;
import com.neu.base.Result;
import com.neu.entity.DTO.TaskDTO;
import com.neu.entity.Role;
import com.neu.entity.Task;
import com.neu.entity.User;

import java.util.List;
import java.util.Map;

public interface TaskService extends IService<Task> {
    PageBean<TaskDTO> pagelist(Integer pageNum, Integer pageSize);

    PageBean<TaskDTO> search(Map map);

    TaskDTO findUserTaskByProjectId(String taskId);


    Result inviteUserInEdit(TaskDTO taskDTO, Role role, User user);

    boolean removeUserTask(TaskDTO taskDTO, String userId);

    Result delete(TaskDTO taskDTO);

    List<TaskDTO> getPreTask(TaskDTO taskDTO);

    TaskDTO findById(TaskDTO taskDTO);

    List<Task> sortByUIdAndType(String userId, String taskType, String pageIdx, String pageSize);

    List<Task> allForFp();

    List<Task> all();
}
